/*
  flamingo - 2D Game Engine
  Copyright (C) 2009 Bradley Zeis

  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <http://www.gnu.org/licenses/>.

  Bradley Zeis
  bradzeis@gmail.com
*/

/*
  flamingo - 2D Game Engine
  Copyright (C) 2009 Bradley Zeis

  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <http://www.gnu.org/licenses/>.

  Bradley Zeis
  flamingoengine@gmail.com
*/

/* -------- FLTIME METHODS -------- */
PyObject *ticks(PyObject *self, PyObject *args);
PyObject *sync(PyObject *self, PyObject *args);
PyObject *ticks_to_seconds(PyObject *self, PyObject *args);
PyObject *seconds_to_ticks(PyObject *self, PyObject *args);

/* -------- CLOCK METHODS -------- */
/* Initialization */
void Clock_dealloc(Clock *self);
PyObject *Clock_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
int Clock_init(Clock *self, PyObject *args);
PyObject *Clock_user_init(Clock *self, PyObject *args);
PyObject *Clock_sync(Clock *self, PyObject *args);
PyObject *Clock_pause(Clock *self, PyObject *args);
PyObject *Clock_resume(Clock *self, PyObject *args);
PyObject *Clock_ticks(Clock *self, PyObject *args);
PyObject *Clock_fps(Clock *self, PyObject *args);
/* Presentation */
PyObject *Clock_repr(Clock *self);
PyObject *Clock_str(Clock *self);

/* -------- TIMER METHODS -------- */
/* Initialization */
void Timer_dealloc(Timer *self);
PyObject *Timer_new(PyTypeObject *type, PyObject *args, PyObject *kwds);
int Timer_init(Timer *self, PyObject *args);
int Timer_sync(Timer *self, long int c);
PyObject *Timer_start(Timer *self, PyObject *args);
PyObject *Timer_pause(Timer *self, PyObject *args);
PyObject *Timer_resume(Timer *self, PyObject *args);
PyObject *Timer_end(Timer *self, PyObject *args);
PyObject *Timer_time(Timer *self, PyObject *args);
PyObject *Timer_time_left(Timer *self, PyObject *args);
/* Presentation */
PyObject *Timer_repr(Timer *self);
PyObject *Timer_str(Timer *self);

PyMODINIT_FUNC initfltime(void);
